﻿
using Entitas;
using Entitas.CodeGeneration.Attributes;
using Game.Data;

namespace Game
{
    /// <summary>
    /// 游戏面板类
    /// </summary>
    [Game]
    public class GameBoardComponent : IComponent
    {
        /// <summary>
        /// 行
        /// </summary>
        public int row;

        /// <summary>
        /// 列
        /// </summary>
        public int column;
    }


    /// <summary>
    /// 游戏面板元素
    /// </summary>
    [Game]
    public class GameBoardItem : IComponent
    {

    }

    /// <summary>
    /// 标记消除状态
    /// </summary>
    [Game, Event(EventTarget.Self)]
    public class DestoryItem : IComponent
    {

    }

    /// <summary>
    /// 游戏元素坐标
    /// </summary>
    [Game,Event(EventTarget.Self)]
    public class ItemIndex : IComponent
    {
        /// <summary>
        /// 坐标位置
        /// </summary>
        [EntityIndex]
        public CustomVector2 index;
    }

    /// <summary>
    /// 加载预制体
    /// </summary>
    [Game,Event(EventTarget.Any)]
    public class LoadPrefabComponent : IComponent
    {
        /// <summary>
        /// 预制体路径
        /// </summary>
        public string prefabPath;
    }

    /// <summary>
    /// 元素是否可移动的标签
    /// </summary>
    [Game]
    public class MoveableComponent : IComponent
    {

    }


}